/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"39371C51-BB7C-473F-982A-C4F054F2B467",variableType:8}
 */
var t_neto_resto = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"6E0C352D-B2B6-4A6E-9394-FDBAB3F9387E",variableType:8}
 */
var t_ganancias_percep = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"357E34E0-05B4-4954-AC7A-C2E9E2E5FF7F",variableType:8}
 */
var porc_1 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"CE0082BC-9962-4CE8-8ABB-DAF3B7B72723",variableType:8}
 */
var porc_2 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"B4EF6C2C-B735-4F6D-B102-E5B1B745F5DB",variableType:8}
 */
var porc_3 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"36ADBFC4-6702-4E76-9C7B-414923662661",variableType:8}
 */
var porc_4 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"F9F5FCE7-25CE-4C9F-B158-E167FC1525EE",variableType:8}
 */
var t_ib_percep = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"FA08BFA8-307A-4A68-B06F-E39E8F6F2AA9",variableType:8}
 */
var t_importe = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"77FD1E7E-D4D5-440B-AA6C-C21BBAB064EE",variableType:8}
 */
var t_itc = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"EE47ADCE-9793-40CF-AAB9-31FDC7879E53",variableType:8}
 */
var t_iva = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"888ECA2C-8E92-4304-9172-41414A478F3D",variableType:8}
 */
var t_iva_1;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"71FBDBB3-FA50-4149-A0EC-42072157C871",variableType:8}
 */
var t_iva_2;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"6CAA54E9-DDF9-4335-A9FF-38FBF03FA445",variableType:8}
 */
var t_iva_3;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"39D109AA-AD2A-4B06-BBA0-5F34967EE6EE",variableType:8}
 */
var t_iva_4;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"1EED8BEC-59F0-4E28-AF25-1C7949091A90",variableType:8}
 */
var t_iva_percep = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"07AC62D9-89D0-4165-B683-890DA211C74E",variableType:8}
 */
var t_neto = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"F710101C-7921-49B4-BC69-A4D5B2B327A8",variableType:8}
 */
var t_neto_1 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"9552BC55-7B27-42BE-96F9-054052664FF0",variableType:8}
 */
var t_neto_2 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"C84EFED1-9939-41EF-A9B7-824C270AE740",variableType:8}
 */
var t_neto_3 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"9E8018BA-DF47-418E-ABC8-1E8C97B09AA9",variableType:8}
 */
var t_neto_4 = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"59223024-77FD-43C3-A664-96020B5BD4B1",variableType:8}
 */
var t_neto_exento = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"DB09B891-6DFF-4C39-AA0B-3589362E35E1",variableType:8}
 */
var t_neto_monotributo = null;

/**
 * @type {Number}
 *
 * @properties={typeid:35,uuid:"756CDF6A-D5E3-4FA2-B313-AFE19715E1B7",variableType:8}
 */
var t_neto_no_gravado;

/**
 * @properties={typeid:24,uuid:"5E1FF056-BC29-4AD6-BFDF-A541B3773EAA"}
 */
function queryTotales() {
	
	var $fechaDesde = globals.gFechaDesde
	$fechaDesde.setHours(00)
	$fechaDesde.setMinutes(00)
	$fechaDesde.setSeconds(00)
	$fechaDesde.setMilliseconds(000)
	var $fDesde = utils.dateFormat($fechaDesde,'yyyy-MM-dd HH:mm:ss')
	var $fechaHasta = globals.gFechaHasta
	$fechaHasta.setHours(23)
	$fechaHasta.setMinutes(59)
	$fechaHasta.setSeconds(59)
	$fechaHasta.setMilliseconds(996)
	var $fHasta = utils.dateFormat($fechaHasta,'yyyy-MM-dd HH:mm:ss')
	var $tipo = ''
	if (forms.diario_compras_ds_1.fTipoProveedor != null)
	{
		$tipo = ' and p.tipo = ? '
	}
	var queryTotales1 = 'SELECT SUM(iva_percep_signo) as "t_iva_percep", SUM(neto_no_gravado_signo) as "t_neto_no_gravado", '+ 
				'SUM(neto_impresion) as "t_neto", SUM(iva_impresion) as "t_iva", SUM(importe_signo) as "t_importe", '+ 
				'SUM(ib_percep_signo) as "t_ib_percep", SUM(itc_signo) as "t_itc", SUM(ganancias_percep_signo) as "t_ganancias_percep" FROM ctacte_pr as "cc" '+
				'INNER JOIN tab_mov_pr as "tb" ON cc.cod_mov = tb.ctacte_mov_pr_id '+ 
				'INNER JOIN proveedor as "p" ON cc.proveedor_id = p.proveedor_id '+
				'WHERE cc.userv_id = ? and cc.fecha_presentacion BETWEEN ? and ? and tb.diario_compras = 1 '+$tipo+' group by cc.userv_id'
	var argsTotales = [globals.gUservID,$fechaDesde,$fechaHasta]
	
	var queryTipoIva = 'SELECT p.tipo_iva_id, SUM(neto_no_gravado_signo) as "total_tipo" FROM ctacte_pr as "cc" '+
						'join proveedor as "p" on p.proveedor_id = cc.proveedor_id '+
						'INNER JOIN tab_mov_pr tb ON cc.cod_mov = ctacte_mov_pr_id '+
						'WHERE cc.fecha_presentacion BETWEEN ? and ? and tb.diario_compras = 1 '+$tipo+' group by p.tipo_iva_id'
	/** @type {Array<Object>}*/
	var argsTipoIva  = [$fechaDesde,$fechaHasta]
	
	var queryTasaIva = 'SELECT ti.tasa_iva_id, ti.tasa_iva_porc, ' + 
						globals.gCharNull + '((select SUM(neto_impresion) from ctacte_pr as "sc" INNER JOIN tab_mov_pr tb ON sc.cod_mov = ctacte_mov_pr_id INNER JOIN proveedor as "p" ON sc.proveedor_id = p.proveedor_id where ti.tasa_iva_porc = sc.iva_porc  and sc.fecha_presentacion  BETWEEN \'' + $fDesde + '\' and \'' + $fHasta +'\' and  tb.diario_compras = 1 '+$tipo+'),0) as "t_neto", '+ 
						globals.gCharNull + '((select SUM(iva_impresion)  from ctacte_pr as "sc" INNER JOIN tab_mov_pr tb ON sc.cod_mov = ctacte_mov_pr_id INNER JOIN proveedor as "p" ON sc.proveedor_id = p.proveedor_id where ti.tasa_iva_id = sc.tasa_iva_id and sc.fecha_presentacion  BETWEEN \'' + $fDesde + '\' and \'' + $fHasta +'\' and  tb.diario_compras = 1 '+$tipo+'),0) as "t_iva" '+ 
						'FROM tasa_iva as "ti"' +
						'group by ti.tasa_iva_porc, ti.tasa_iva_id order by ti.tasa_iva_porc'
	var argsTasas	= []
	
	if (forms.diario_compras_ds_1.fTipoProveedor != null)
	{
		//argsTotales.push(forms.diario_compras_ds_1.fTipoProveedor)
		argsTipoIva.push(forms.diario_compras_ds_1.fTipoProveedor)
		argsTasas.push(forms.diario_compras_ds_1.fTipoProveedor)
		argsTasas.push(forms.diario_compras_ds_1.fTipoProveedor)
	}
	var $totales 	= databaseManager.getDataSetByQuery('infocom',queryTotales1,argsTotales,-1)
	var $tipoIva 	= databaseManager.getDataSetByQuery('infocom',queryTipoIva,argsTipoIva,-1)
	var $tasasIva 	= databaseManager.getDataSetByQuery('infocom',queryTasaIva,argsTasas,-1)

	//Indices de Totales
	var iIvaPrecep 	= $totales.getColumnNames().indexOf("t_iva_percep",0) + 1
	var iNeto		= $totales.getColumnNames().indexOf("t_neto",0) + 1
	var iNetoNG		= $totales.getColumnNames().indexOf("t_neto_no_gravado",0) + 1
	var iIva		= $totales.getColumnNames().indexOf("t_iva",0) + 1
	var iImporte	= $totales.getColumnNames().indexOf("t_importe",0) + 1 
	var iIbPercep	= $totales.getColumnNames().indexOf("t_ib_percep",0) + 1
	var iItc		= $totales.getColumnNames().indexOf("t_itc",0) + 1
	var iGananciasP	= $totales.getColumnNames().indexOf("t_ganancias_percep",0) + 1
	
	//Indices Tipo Iva
	var iTipoIva	= $tipoIva.getColumnNames().indexOf("tipo_iva_id",0) + 1
	var iTTipo		= $tipoIva.getColumnNames().indexOf("total_tipo",0) + 1
	var $filas		= $tipoIva.getColumnAsArray(iTipoIva)
	var iInscripto	= $filas.indexOf(globals.zconf_tipo_iva_inscripto,0) + 1
	var iMonotri	= $filas.indexOf(globals.zconf_tipo_iva_monotributo,0) + 1
	var iExento		= $filas.indexOf(globals.zconf_tipo_iva_exento,0) + 1
	var iConsFinal	= $filas.indexOf(globals.zconf_tipo_iva_cons_final,0) + 1

	//Indices de las tasas
	var iIvaPorc	= $tasasIva.getColumnNames().indexOf("tasa_iva_porc",0) + 1
	var iTNeto		= $tasasIva.getColumnNames().indexOf("t_neto",0) + 1
	var iTIva		= $tasasIva.getColumnNames().indexOf("t_iva",0) + 1
	
	//Valores de Totales
	t_importe 			= $totales.getValue(1,iImporte) * 1
	t_iva_percep 		= $totales.getValue(1,iIvaPrecep) * 1
	t_ib_percep 		= $totales.getValue(1,iIbPercep) * 1
	t_itc 				= $totales.getValue(1,iItc) * 1
	t_iva 				= $totales.getValue(1,iIva) * 1
	t_neto 				= $totales.getValue(1,iNeto) * 1
	t_neto_no_gravado	= $totales.getValue(1,iNetoNG) * 1
	t_ganancias_percep	= $totales.getValue(1,iGananciasP) * 1
	
	//Valores de Tipo Iva
	t_neto_exento 		= $tipoIva.getValue(iExento,iTTipo) * 1;
	t_neto_monotributo 	= $tipoIva.getValue(iMonotri,iTTipo) * 1;
	t_neto_resto 		= $tipoIva.getValue(iInscripto,iTTipo) * 1
	t_neto_resto 		+= $tipoIva.getValue(iConsFinal,iTTipo) * 1
	
	//Valores Tasas
	t_iva_4 	= $tasasIva.getValue(4,iTIva) * 1;
	t_iva_3 	= $tasasIva.getValue(3,iTIva) * 1;
	t_iva_2 	= $tasasIva.getValue(2,iTIva) * 1;
	t_iva_1 	= $tasasIva.getValue(1,iTIva) * 1;
	t_neto_4 	= $tasasIva.getValue(4,iTNeto) * 1;
	t_neto_3 	= $tasasIva.getValue(3,iTNeto) * 1;
	t_neto_2 	= $tasasIva.getValue(2,iTNeto) * 1;
	t_neto_1 	= $tasasIva.getValue(1,iTNeto) * 1;
	porc_4 		= $tasasIva.getValue(4,iIvaPorc) * 1;
	porc_3 		= $tasasIva.getValue(3,iIvaPorc) * 1;
	porc_2 		= $tasasIva.getValue(2,iIvaPorc) * 1;
	porc_1 		= $tasasIva.getValue(1,iIvaPorc) * 1;
	
	return true
/*	var $params = {
		tExento: t_neto_exento, 
		tMonotributo: t_neto_monotributo,
		tResto: t_neto_resto,
		tIva4: t_iva_4,		tIva3: t_iva_3,		tIva2: t_iva_2,		tIva1: t_iva_1,		tNeto4: t_neto_4,		tNeto3: t_neto_3,		tNeto2: t_neto_2,		tNeto1: t_neto_1,		pPorc4: porc_4, 			pPorc3: porc_3,		pPorc2: porc_2,			pPorc1: porc_1
	}
	return $params*/
}